package com.itcast.clientx.util;

import org.junit.jupiter.api.Test;

import java.util.Arrays;

public class SortComeTrue {

    /**
     * 冒泡排序
     * @param array
     * @return
     */
    public int[] sort(int[] array){

        int length = array.length;

        int t = 0;

        for (int i = 0; i < length-1; i++) {

            for (int j = i+1; j < length; j++) {

                if(array[i] > array[j]){
                    t = array[i];
                    array[i] = array[j];
                    array[j] = t;
                }
            }
        }
        return array;
    }

    /**
     * 选择排序
     * @param array
     * @return
     */
    public int[] sort1(int[] array){
        int length = array.length;
        int min = 0;
        int t = 0;
        for (int i = 0; i < length-1; i++) {
            min = i;
            for (int j = i+1; j < length; j++) {
                if(array[min]>array[j]){
                    min = j;
                }
            }
            if(min!=i){
                t = array[i];
                array[i] = array[min];
                array[min] = t;
            }
        }
        return array;
    }
    /**
     * 插入排序
     * @param array
     * @return
     */
    public int[] sort2(int[] array){

        if (array == null || array.length < 2) {
            return array;
        }
        for (int i = 1; i < array.length; i++) {
            for (int j = i - 1; j >= 0 && array[j] > array[j + 1]; j--) {
                int temp = array[j];
                array[j] = array[j + 1];
                array[j + 1] = temp;
            }
        }
        return array;
    }
    /**
     * 49423941
     * 74756107
     * 这个主要就是解析数据的问题 CSS选择器
     */
    @Test
    public void contextLoads(){

        int[] array = {3,5,7,9,1,2,8,4,6};
        array = this.sort2(array);
        System.out.println(Arrays.toString(array));
    }
}